草庐IT

python 反序列化

全部标签

c# - 如何反序列化没有命名空间等的 xml...?

我有一个看起来像这样的xml文件:现在我尝试反序列化它,但总是得到错误:wasnotexpected谁能解决这个问题?我无法控制xml。谢谢 最佳答案 为什么不直接将其作为DOM加载(例如使用XmlDocument或XDocument)并自己提取数据?假设它不是用XmlSerializer保存的,那么尝试以这种方式反序列化是没有意义的。编辑:如果您能在这里给我们一些背景知识,将会有所帮助。如果这不是有效的XmlSerializer输出,那是什么?它最初是一个有效的文件,但有什么东西去掉了namespace吗?如果是,它还做了什么?您

python - XML 和 Python : Get the namespaces declared in root element

如何访问XML树根元素处的多个xmlns声明?例如:importxml.etree.cElementTreeasETdata="""...allotherchildelementshere..."""tree=ET.fromstring(data)#Idon'tknowwhattodohereafterwards我想得到一个类似于这个的字典,或者至少是某种格式,以便更容易地获取URI和匹配的标签{'one':"http://www.first.uri/here/",'two':"http://www.second.uri/here/"} 最佳答案

.net - 反序列化 XML 文件中的注释

我正在尝试反序列化以下示例XML文件。我已经为此XML文件创建了架构。在架构的帮助下,我能够将XML反序列化为对象。但我的问题是我的XML文件上有一个XML注释(例如:)。反序列化器没有将注释从XML读取到我使用模式创建的对象。我还注意到在评论节点的模式中没有可用的条目。如何从XML文件读取注释到对象? 最佳答案 对象序列化的要点是保存对象的状态,并在以后恢复它。对象字段映射到XML元素和属性,反之亦然。XMLSerializer不会将任何内容映射到注释,反之亦然,因此您无法将注释反序列化到对象中的任何内容。但是,如果您使用传递给D

python - 如何将xml header 添加到dom对象

我正在使用Python的xml.dom.minidom,但我认为这个问题对任何DOM解析器都是有效的。我的原始文件开头有这样一行:这似乎不是dom的一部分,所以当我执行类似dom.toxml()的操作时,生成的字符串在开头没有一行。如何添加?示例输出:BANDSAWBLADES希望清楚。 最佳答案 Thisdoesn'tseemtobepartofthedomXML声明没有自己的节点,不,但是其中声明的属性在Document对象上可见:>>>doc=minidom.parseString('')>>>doc.encoding'utf

python - 使用元素树读取动态xml

环境:Windows、Python、wxpython和Elementtree作为xml解析器。我正在开发一个独立的系统,它可以读取xml并创建一棵树。我的应用程序读取xml并创建树,但是当xml下次更改时(当xml的深度增加时-我的意思是当添加两个子元素时)。应用程序无法读取(逻辑失败:()例如我写了一个逻辑,可以读取任何深度为5的xml。但是当它读取深度超过5的xml时,它会失败。请告诉我如何读取深度为动态的xml。 最佳答案 你应该使用递归调用,更像是:defrecurse_tree(node):tree={}forelemen

python - 如何使 xml.sax 对其 DTD 请求使用 HTTP 代理?

XMLparsersoftensendoutHTTPrequestsforfetchingDTDs是一个已知问题文档中引用。具体来说,Python'sonedoesthis.这会导致承载大量此类DTD的www.w3.org流量过大。反过来,这会使XML解析花费很长时间,并且在某些情况下会超时。这可能是一个严重的问题,因为它使一项看似仅与文本处理相关的任务依赖于不可靠的第三方。为了减轻这个问题(因为真正的解决方案非常困难),我想在本地安装一个缓存Web代理并要求xml.sax通过这个代理发送它的请求。我特别不希望代理设置泄漏到其他组件,因此系统范围的设置是不可能的。如何使xml.sax使

python - 使用自定义元素类在 Python 中解析 xml

我想使用Python的xml.etree.ElementTree模块解析xml文档。但是,我希望生成的树对象中的所有元素都具有我定义的一些类方法。这建议创建我自己的Python元素类的子类,但我无法告诉解析器在解析时使用我自己的元素子类,而不是内置类。例如,假设我希望树中的节点有一个名为custommethod()的新方法。为此,我创建了一个元素子类:classMyElement(xml.etree.ElementTree._Element):defcustommethod():...现在,当我使用解析一棵树时tree=xml.etree.ElementTree.parse(sourc

c# - .net 中的 XML 序列化

我正在尝试序列化一个对象以满足另一个系统要求。它需要看起来像这样:blue而是看起来像这样:blue到目前为止我有这个:[XmlElement("custom-attribute")]publicStringColour{get;set;}我不太确定实现此目标需要哪些元数据。 最佳答案 你可以实现IXmlSerializable:publicclassRoot{[XmlElement("custom-attribute")]publicColourColour{get;set;}}publicclassColour:IXmlSeri

ruby-on-rails - Rails JSON 和 XML 序列化包括微秒

在为“日期时间”字段序列化Rails对象时是否可以包含微秒?例如:{"created_at":"2011-05-27T19:49:43.123456Z","updated_at":"2011-05-27T19:49:43.654321Z","..."} 最佳答案 您需要覆盖thisfile中设置的默认JSON格式.您要使用的格式是这样的strftime('%Y/%m/%d%H:%M:%S.%6N%z')您可以像这样修补JSON的DateTime输出classDateTimedefas_json(options=nil)strftim

c# - 在 C# 中使用 Datacontract 反序列化谷歌地理编码 XML

我有以下Google地理编码XMLOKstreet_address1600AmphitheatrePkwy,MountainView,CA94043,USA16001600street_numberAmphitheatrePkwyAmphitheatrePkwyroute....37.4217550-122.0846330ROOFTOP37.4188514-122.087452637.4251466-122.0811574和下面的对象[DataContract(Namespace="")]publicclassGeocodeResponse{[DataMember(Name="stat